﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Renci.Data.Interop.OpenGIS.Iso.tc211_2005.gco;

namespace Renci.Data.Interop.OpenGIS.Iso.tc211_2005.gmd
{
    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_Initiative_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_Series_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_ProductionSeries_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_Sensor_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_Platform_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_OtherAggregate_Type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(DS_StereoMate_Type))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.isotc211.org/2005/gmd")]
    public abstract class AbstractDS_Aggregate_Type : AbstractObject_Type
    {
        private System.Collections.ObjectModel.Collection<DS_DataSet_PropertyType> _composedOf = new System.Collections.ObjectModel.Collection<DS_DataSet_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("composedOf")]
        public System.Collections.ObjectModel.Collection<DS_DataSet_PropertyType> ComposedOf { get { return this._composedOf; } }

        private System.Collections.ObjectModel.Collection<MD_Metadata_PropertyType> _seriesMetadata = new System.Collections.ObjectModel.Collection<MD_Metadata_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("seriesMetadata")]
        public System.Collections.ObjectModel.Collection<MD_Metadata_PropertyType> SeriesMetadata { get { return this._seriesMetadata; } }

        private System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType> _subset = new System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("subset")]
        public System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType> Subset { get { return this._subset; } }

        private System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType> _superset = new System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("superset")]
        public System.Collections.ObjectModel.Collection<DS_Aggregate_PropertyType> Superset { get { return this._superset; } }
    }
}
